#ifndef _REG52_H_
#define _REG52_H_
#include <8052.h>
#define _nop_() __asm nop __endasm
#define code __code
#define  bit __bit
#define interrupt __interrupt
#define xdata __xdata
#define using __using

__sfr __at (0xE8) P4   ;
/* P0 */
__sbit __at (0xE8) P4_0 ;
__sbit __at (0xE9) P4_1 ;
__sbit __at (0xEA) P4_2 ;
__sbit __at (0xEB) P4_3 ;
__sbit __at (0xEC) P4_4 ;
__sbit __at (0xED) P4_5 ;
__sbit __at (0xEE) P4_6 ;
__sbit __at (0xEF) P4_7 ;

typedef unsigned char   uint8;	//  8 bits 
typedef unsigned int  	uint16;	// 16 bits 
typedef unsigned long   uint32;	// 32 bits 


typedef signed char     int8;	//  8 bits 
typedef signed int      int16;	// 16 bits 

typedef signed long     int32;	// 32 bits 


typedef volatile int8   vint8;	//  8 bits 
typedef volatile int16  vint16;	// 16 bits 
typedef volatile int32  vint32;	// 32 bits 


typedef volatile uint8  vuint8;	//  8 bits 
typedef volatile uint16 vuint16;	// 16 bits 
typedef volatile uint32 vuint32;	// 32 bits 
typedef unsigned char BYTE;
typedef unsigned int WORD;
typedef unsigned long DWORD;
typedef unsigned char uint8_t;
typedef unsigned long UINT32;
#endif
